package com.regent.central.bill.dto.sale_order;


import com.regent.central.bill.common.SaleOrderType;
import com.regent.central.bill.dto.ClearanceDTO;
import com.regent.central.bill.dto.RemittanceDTO;

import java.math.BigDecimal;
import java.util.List;

/**
 * 销售单创建DTO
 *
 * @author 杨昌沛 646742615@qq.com
 * @date 2018-06-15 11:28
 **/
public class SaleOrderCreateDTO {
    /**
     * 销售单ID
     */
    private String saleOrderId;
    /**
     * 开单类型, 销售单/收款单
     */
    private SaleOrderType type;
    /**
     * 客户ID
     */
    private String customerId;
    /**
     * 收货地址ID
     */
    private String addressId;
    /**
     * 是否现场发货 true: 是  false: 否
     */
    private boolean deliveryOnScene;
    /**
     * 抹零金额
     */
    private BigDecimal oddment;
    /**
     * 开单要货货品列表
     */
    private List<SaleOrderCreateGoodsDTO> createGoods;
    /**
     * 改单货品列表
     */
    private List<SaleOrderModifyGoodsDTO> modifyGoods;
    /**
     * 退货货品列表
     */
    private List<SaleOrderReturnGoodsDTO> returnGoods;
    /**
     * 收款列表
     */
    private List<RemittanceDTO> inRemittances;
    /**
     * 退款列表
     */
    private List<RemittanceDTO> outRemittances;
    /**
     * 销售单备注
     */
    private List<SaleOrderRemarkDTO> remarks;

    /**
     * 核销列表
     */
    private List<ClearanceDTO> clearances;
    /**
     * 开单时间 yyyy-MM-dd HH:mm:ss
     */
    private String dateOrdered;
    /**
     * 优惠类型, 直接改价/打折/清仓模板...
     */
    private String couponType;

    /**
     * 折扣
     */
    private BigDecimal discount;

    /**
     * 清仓模板ID
     */
    private String couponTemplateId;

    public String getSaleOrderId() {
        return saleOrderId;
    }

    public void setSaleOrderId(String saleOrderId) {
        this.saleOrderId = saleOrderId;
    }

    public SaleOrderType getType() {
        return type;
    }

    public void setType(SaleOrderType type) {
        this.type = type;
    }

    public String getCustomerId() {
        return customerId;
    }

    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    public String getAddressId() {
        return addressId;
    }

    public void setAddressId(String addressId) {
        this.addressId = addressId;
    }

    public boolean isDeliveryOnScene() {
        return deliveryOnScene;
    }

    public void setDeliveryOnScene(boolean deliveryOnScene) {
        this.deliveryOnScene = deliveryOnScene;
    }

    public List<SaleOrderCreateGoodsDTO> getCreateGoods() {
        return createGoods;
    }

    public void setCreateGoods(List<SaleOrderCreateGoodsDTO> createGoods) {
        this.createGoods = createGoods;
    }

    public List<SaleOrderModifyGoodsDTO> getModifyGoods() {
        return modifyGoods;
    }

    public void setModifyGoods(List<SaleOrderModifyGoodsDTO> modifyGoods) {
        this.modifyGoods = modifyGoods;
    }

    public List<SaleOrderReturnGoodsDTO> getReturnGoods() {
        return returnGoods;
    }

    public void setReturnGoods(List<SaleOrderReturnGoodsDTO> returnGoods) {
        this.returnGoods = returnGoods;
    }

    public List<RemittanceDTO> getInRemittances() {
        return inRemittances;
    }

    public void setInRemittances(List<RemittanceDTO> inRemittances) {
        this.inRemittances = inRemittances;
    }

    public List<RemittanceDTO> getOutRemittances() {
        return outRemittances;
    }

    public void setOutRemittances(List<RemittanceDTO> outRemittances) {
        this.outRemittances = outRemittances;
    }

    public List<SaleOrderRemarkDTO> getRemarks() {
        return remarks;
    }

    public void setRemarks(List<SaleOrderRemarkDTO> remarks) {
        this.remarks = remarks;
    }

    public List<ClearanceDTO> getClearances() {
        return clearances;
    }

    public void setClearances(List<ClearanceDTO> clearances) {
        this.clearances = clearances;
    }

    public BigDecimal getOddment() {
        return oddment;
    }

    public void setOddment(BigDecimal oddment) {
        this.oddment = oddment;
    }

    public String getDateOrdered() {
        return dateOrdered;
    }

    public void setDateOrdered(String dateOrdered) {
        this.dateOrdered = dateOrdered;
    }

    public String getCouponType() {
        return couponType;
    }

    public void setCouponType(String couponType) {
        this.couponType = couponType;
    }

    public BigDecimal getDiscount() {
        return discount;
    }

    public void setDiscount(BigDecimal discount) {
        this.discount = discount;
    }

    public String getCouponTemplateId() {
        return couponTemplateId;
    }

    public void setCouponTemplateId(String couponTemplateId) {
        this.couponTemplateId = couponTemplateId;
    }
}



